home *** CD-ROM | disk | FTP | other *** search
/ 600 Games / 600games.iso / Puzzle / rebound.swf / scripts / %3Cdefault package%3E / FCheckBoxSymbol.as next >
Encoding:
Text File  |  2006-06-13  |  8.7 KB  |  337 lines

  1. function FCheckBoxClass()
  2. {
  3.    this.init();
  4. }
  5. FCheckBoxClass.prototype = new FUIComponentClass();
  6. Object.registerClass("FCheckBoxSymbol",FCheckBoxClass);
  7. FCheckBoxClass.prototype.init = function()
  8. {
  9.    var _loc1_ = this;
  10.    super.setSize(_loc1_._width,_loc1_._height);
  11.    _loc1_.boundingBox_mc.unloadMovie();
  12.    _loc1_.attachMovie("fcb_hitArea","fcb_hitArea_mc",1);
  13.    _loc1_.attachMovie("fcb_states","fcb_states_mc",2);
  14.    _loc1_.attachMovie("FLabelSymbol","fLabel_mc",3);
  15.    super.init();
  16.    _loc1_.setChangeHandler(_loc1_.changeHandler);
  17.    _loc1_._xscale = 100;
  18.    _loc1_._yscale = 100;
  19.    _loc1_.setSize(_loc1_.width,_loc1_.height);
  20.    if(_loc1_.initialValue == undefined)
  21.    {
  22.       _loc1_.setCheckState(false);
  23.    }
  24.    else
  25.    {
  26.       _loc1_.setCheckState(_loc1_.initialValue);
  27.    }
  28.    if(_loc1_.label != undefined)
  29.    {
  30.       _loc1_.setLabel(_loc1_.label);
  31.    }
  32.    _loc1_.ROLE_SYSTEM_CHECKBUTTON = 44;
  33.    _loc1_.STATE_SYSTEM_CHECKED = 16;
  34.    _loc1_.EVENT_OBJECT_STATECHANGE = 32778;
  35.    _loc1_.EVENT_OBJECT_NAMECHANGE = 32780;
  36.    _loc1_._accImpl.master = _loc1_;
  37.    _loc1_._accImpl.stub = false;
  38.    _loc1_._accImpl.get_accRole = _loc1_.get_accRole;
  39.    _loc1_._accImpl.get_accName = _loc1_.get_accName;
  40.    _loc1_._accImpl.get_accState = _loc1_.get_accState;
  41.    _loc1_._accImpl.get_accDefaultAction = _loc1_.get_accDefaultAction;
  42.    _loc1_._accImpl.accDoDefaultAction = _loc1_.accDoDefaultAction;
  43. };
  44. FCheckBoxClass.prototype.setLabelPlacement = function(pos)
  45. {
  46.    var _loc1_ = this;
  47.    var _loc3_ = pos;
  48.    _loc1_.setLabel(_loc1_.getLabel());
  49.    _loc1_.txtFormat(_loc3_);
  50.    var halfLabelH = _loc1_.fLabel_mc._height / 2;
  51.    var halfFrameH = _loc1_.fcb_states_mc._height / 2;
  52.    var vertCenter = halfFrameH - halfLabelH;
  53.    var checkWidth = _loc1_.fcb_states_mc._width;
  54.    var frame = _loc1_.fcb_states_mc;
  55.    var label = _loc1_.fLabel_mc;
  56.    var _loc2_ = 0;
  57.    if(frame._width > _loc1_.width)
  58.    {
  59.       _loc2_ = 0;
  60.    }
  61.    else
  62.    {
  63.       _loc2_ = _loc1_.width - frame._width;
  64.    }
  65.    _loc1_.fLabel_mc.setSize(_loc2_);
  66.    if(_loc3_ == "right" || _loc3_ == undefined)
  67.    {
  68.       _loc1_.labelPlacement = "right";
  69.       _loc1_.fcb_states_mc._x = 0;
  70.       _loc1_.fLabel_mc._x = checkWidth;
  71.       _loc1_.txtFormat("left");
  72.    }
  73.    else if(_loc3_ == "left")
  74.    {
  75.       _loc1_.labelPlacement = "left";
  76.       _loc1_.fLabel_mc._x = 0;
  77.       _loc1_.fcb_states_mc._x = _loc1_.width - checkWidth;
  78.       _loc1_.txtFormat("right");
  79.    }
  80.    _loc1_.fLabel_mc._y = vertCenter;
  81.    _loc1_.fcb_hitArea_mc._y = vertCenter;
  82. };
  83. FCheckBoxClass.prototype.txtFormat = function(pos)
  84. {
  85.    var _loc1_ = this;
  86.    var _loc2_ = _loc1_.textStyle;
  87.    var _loc3_ = _loc1_.styleTable;
  88.    _loc2_.align = _loc3_.textAlign.value != undefined ? undefined : (_loc2_.align = pos);
  89.    _loc2_.leftMargin = _loc3_.textLeftMargin.value != undefined ? undefined : (_loc2_.leftMargin = 0);
  90.    _loc2_.rightMargin = _loc3_.textRightMargin.value != undefined ? undefined : (_loc2_.rightMargin = 0);
  91.    if(_loc1_.flabel_mc._height > _loc1_.height)
  92.    {
  93.       super.setSize(_loc1_.width,_loc1_.flabel_mc._height);
  94.    }
  95.    else
  96.    {
  97.       super.setSize(_loc1_.width,_loc1_.height);
  98.    }
  99.    _loc1_.fLabel_mc.labelField.setTextFormat(_loc1_.textStyle);
  100.    _loc1_.setEnabled(_loc1_.enable);
  101. };
  102. FCheckBoxClass.prototype.setHitArea = function(w, h)
  103. {
  104.    var _loc2_ = this;
  105.    var _loc1_ = _loc2_.fcb_hitArea_mc;
  106.    _loc2_.hitArea = _loc1_;
  107.    if(_loc2_.fcb_states_mc._width > w)
  108.    {
  109.       _loc1_._width = _loc2_.fcb_states_mc._width;
  110.    }
  111.    else
  112.    {
  113.       _loc1_._width = w;
  114.    }
  115.    _loc1_._visible = false;
  116.    if(arguments.length > 1)
  117.    {
  118.       _loc1_._height = h;
  119.    }
  120. };
  121. FCheckBoxClass.prototype.setSize = function(w)
  122. {
  123.    var _loc1_ = this;
  124.    _loc1_.setLabel(_loc1_.getLabel());
  125.    _loc1_.setLabelPlacement(_loc1_.labelPlacement);
  126.    if(_loc1_.fcb_states_mc._height < _loc1_.flabel_mc.labelField._height)
  127.    {
  128.       super.setSize(w,_loc1_.flabel_mc.labelField._height);
  129.    }
  130.    _loc1_.setHitArea(_loc1_.width,_loc1_.height);
  131.    _loc1_.setLabelPlacement(_loc1_.labelPlacement);
  132. };
  133. FCheckBoxClass.prototype.drawFocusRect = function()
  134. {
  135.    var _loc1_ = this;
  136.    _loc1_.drawRect(-2,-2,_loc1_._width + 6,_loc1_._height - 1);
  137. };
  138. FCheckBoxClass.prototype.onPress = function()
  139. {
  140.    var _loc2_ = this;
  141.    _loc2_.pressFocus();
  142.    _root.focusRect.removeMovieClip();
  143.    var _loc1_ = _loc2_.fcb_states_mc;
  144.    if(_loc2_.getValue())
  145.    {
  146.       _loc1_.gotoAndStop("checkedPress");
  147.    }
  148.    else
  149.    {
  150.       _loc1_.gotoAndStop("press");
  151.    }
  152. };
  153. FCheckBoxClass.prototype.onRelease = function()
  154. {
  155.    var _loc1_ = this;
  156.    _loc1_.fcb_states_mc.gotoAndStop("up");
  157.    _loc1_.setValue(!_loc1_.checked);
  158. };
  159. FCheckBoxClass.prototype.onReleaseOutside = function()
  160. {
  161.    var _loc1_ = this.fcb_states_mc;
  162.    if(this.getValue())
  163.    {
  164.       _loc1_.gotoAndStop("checkedEnabled");
  165.    }
  166.    else
  167.    {
  168.       _loc1_.gotoAndStop("up");
  169.    }
  170. };
  171. FCheckBoxClass.prototype.onDragOut = function()
  172. {
  173.    var _loc1_ = this.fcb_states_mc;
  174.    if(this.getValue())
  175.    {
  176.       _loc1_.gotoAndStop("checkedEnabled");
  177.    }
  178.    else
  179.    {
  180.       _loc1_.gotoAndStop("up");
  181.    }
  182. };
  183. FCheckBoxClass.prototype.onDragOver = function()
  184. {
  185.    var _loc1_ = this.fcb_states_mc;
  186.    if(this.getValue())
  187.    {
  188.       _loc1_.gotoAndStop("checkedPress");
  189.    }
  190.    else
  191.    {
  192.       _loc1_.gotoAndStop("press");
  193.    }
  194. };
  195. FCheckBoxClass.prototype.setValue = function(checkedValue)
  196. {
  197.    var _loc1_ = this;
  198.    var _loc2_ = checkedValue;
  199.    if(_loc2_ || _loc2_ == undefined)
  200.    {
  201.       _loc1_.setCheckState(_loc2_);
  202.    }
  203.    else if(_loc2_ == false)
  204.    {
  205.       _loc1_.setCheckState(_loc2_);
  206.    }
  207.    _loc1_.executeCallBack();
  208.    if(Accessibility.isActive())
  209.    {
  210.       Accessibility.sendEvent(_loc1_,0,_loc1_.EVENT_OBJECT_STATECHANGE,true);
  211.    }
  212. };
  213. FCheckBoxClass.prototype.setCheckState = function(checkedValue)
  214. {
  215.    var _loc1_ = this;
  216.    var _loc3_ = checkedValue;
  217.    var _loc2_ = _loc1_.fcb_states_mc;
  218.    if(_loc1_.enable)
  219.    {
  220.       _loc1_.flabel_mc.setEnabled(true);
  221.       if(_loc3_ || _loc3_ == undefined)
  222.       {
  223.          _loc2_.gotoAndStop("checkedEnabled");
  224.          _loc1_.enabled = true;
  225.          _loc1_.checked = true;
  226.       }
  227.       else
  228.       {
  229.          _loc2_.gotoAndStop("up");
  230.          _loc1_.enabled = true;
  231.          _loc1_.checked = false;
  232.       }
  233.    }
  234.    else
  235.    {
  236.       _loc1_.flabel_mc.setEnabled(false);
  237.       if(_loc3_ || _loc3_ == undefined)
  238.       {
  239.          _loc2_.gotoAndStop("checkedDisabled");
  240.          _loc1_.enabled = false;
  241.          _loc1_.checked = true;
  242.       }
  243.       else
  244.       {
  245.          _loc2_.gotoAndStop("uncheckedDisabled");
  246.          _loc1_.enabled = false;
  247.          _loc1_.checked = false;
  248.          _loc1_.focusRect.removeMovieClip();
  249.       }
  250.    }
  251. };
  252. FCheckBoxClass.prototype.getValue = function()
  253. {
  254.    return this.checked;
  255. };
  256. FCheckBoxClass.prototype.setEnabled = function(enable)
  257. {
  258.    var _loc1_ = this;
  259.    if(enable == true || enable == undefined)
  260.    {
  261.       _loc1_.enable = true;
  262.       Super.setEnabled(true);
  263.    }
  264.    else
  265.    {
  266.       _loc1_.enable = false;
  267.       Super.setEnabled(false);
  268.    }
  269.    _loc1_.setCheckState(_loc1_.checked);
  270. };
  271. FCheckBoxClass.prototype.getEnabled = function()
  272. {
  273.    return this.enable;
  274. };
  275. FCheckBoxClass.prototype.setLabel = function(label)
  276. {
  277.    var _loc1_ = this;
  278.    _loc1_.fLabel_mc.setLabel(label);
  279.    _loc1_.txtFormat();
  280.    if(Accessibility.isActive())
  281.    {
  282.       Accessibility.sendEvent(_loc1_,0,_loc1_.EVENT_OBJECT_NAMECHANGE);
  283.    }
  284. };
  285. FCheckBoxClass.prototype.getLabel = function()
  286. {
  287.    return this.fLabel_mc.labelField.text;
  288. };
  289. FCheckBoxClass.prototype.setTextColor = function(color)
  290. {
  291.    this.fLabel_mc.labelField.textColor = color;
  292. };
  293. FCheckBoxClass.prototype.myOnKeyDown = function()
  294. {
  295.    var _loc1_ = this;
  296.    if(Key.getCode() == 32 && _loc1_.pressOnce == undefined && _loc1_.enabled == true)
  297.    {
  298.       _loc1_.setValue(!_loc1_.getValue());
  299.       _loc1_.pressOnce = true;
  300.    }
  301. };
  302. FCheckBoxClass.prototype.myOnKeyUp = function()
  303. {
  304.    if(Key.getCode() == 32)
  305.    {
  306.       this.pressOnce = undefined;
  307.    }
  308. };
  309. FCheckBoxClass.prototype.get_accRole = function(childId)
  310. {
  311.    return this.master.ROLE_SYSTEM_CHECKBUTTON;
  312. };
  313. FCheckBoxClass.prototype.get_accName = function(childId)
  314. {
  315.    return this.master.getLabel();
  316. };
  317. FCheckBoxClass.prototype.get_accState = function(childId)
  318. {
  319.    if(this.master.getValue())
  320.    {
  321.       return this.master.STATE_SYSTEM_CHECKED;
  322.    }
  323.    return 0;
  324. };
  325. FCheckBoxClass.prototype.get_accDefaultAction = function(childId)
  326. {
  327.    if(this.master.getValue())
  328.    {
  329.       return "UnCheck";
  330.    }
  331.    return "Check";
  332. };
  333. FCheckBoxClass.prototype.accDoDefaultAction = function(childId)
  334. {
  335.    this.master.setValue(!this.master.getValue());
  336. };
  337.